package cn.stylefeng.guns.modular.rest.kstJy.vo;

import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.util.List;

/**
 * 油站列表请求参数VO
 * 用于表示从服务端获取的油站列表数据。
 *
 * @author : like
 * @date : 2024/8/4 9:13
 * @Version: 1.0
 */
@Data
public class StationListRequestVO {

    /**
     * 响应状态码。
     */
    @JsonProperty("code")
    private int code;

    /**
     * 响应消息。
     */
    @JsonProperty("msg")
    private String message;

    /**
     * 数据列表。
     */
    @JsonProperty("data")
    private List<StationData> data;

    /**
     * 表示单个油站的数据。
     */
    @Data
    public static class StationData {
        /**
         * 站点ID。
         */
        @JsonProperty("station_id")
        private int stationId;

        /**
         * 站点名称。
         */
        @JsonProperty("gas_name")
        private String gasName;

        /**
         * 站点图标（大图）。
         */
        @JsonProperty("gas_logo_big")
        private String gasLogoBig;

        /**
         * 站点图标（小图）。
         */
        @JsonProperty("gas_logo_small")
        private String gasLogoSmall;

        /**
         * 站点地址。
         */
        @JsonProperty("gas_address")
        private String gasAddress;

        /**
         * 省份。
         */
        @JsonProperty("province_name")
        private String provinceName;

        /**
         * 城市。
         */
        @JsonProperty("city_name")
        private String cityName;

        /**
         * 区域。
         */
        @JsonProperty("county_name")
        private String countyName;

        /**
         * 手机号码列表。
         */
        @JsonProperty("contact_mobile")
        private List<String> contactMobiles;

        /**
         * 单位价格。
         */
        @JsonProperty("unit_price")
        private String unitPrice;

        /**
         * 站点类型名称。
         */
        @JsonProperty("station_type_name")
        private String stationTypeName;

        /**
         * 站点类型。
         */
        @JsonProperty("type_name")
        private String typeName;

        /**
         * 经度。
         */
        @JsonProperty("longitude")
        private String longitude;

        /**
         * 纬度。
         */
        @JsonProperty("latitude")
        private String latitude;

        /**
         * 工作开始时间。
         */
        @JsonProperty("work_start_time")
        private String workStartTime;

        /**
         * 工作结束时间。
         */
        @JsonProperty("work_end_time")
        private String workEndTime;

        /**
         * 油品信息。
         */
        @JsonProperty("oil_bars")
        private OilBars oilBars;
    }

    /**
     * 表示油品的具体信息。
     */
    @Data
    public static class OilBars {
        /**
         * 油品代码。
         */
        @JsonProperty("oil_code")
        private String oilCode;

        /**
         * 油品名称。
         */
        @JsonProperty("oil_name")
        private String oilName;

        /**
         * 枪号。
         */
        @JsonProperty("oil_bar")
        private int oilBar;

        /**
         * 价格。
         */
        @JsonProperty("price")
        private String price;

        /**
         * 列表价格。
         */
        @JsonProperty("listing_price")
        private String listingPrice;
    }
}